
package br.embedded.socialapp.business;

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>Java class for user complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType name="user">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="aboutMe" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="activities" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="addresses" type="{http://business.socialapp.embedded.br/}address" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="age" type="{http://www.w3.org/2001/XMLSchema}int"/>
 *         &lt;element name="bodyType" type="{http://business.socialapp.embedded.br/}bodyType" minOccurs="0"/>
 *         &lt;element name="books" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="cars" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="children" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="currentLocation" type="{http://business.socialapp.embedded.br/}address" minOccurs="0"/>
 *         &lt;element name="dateOfBirth" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="drinker" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="emails" type="{http://business.socialapp.embedded.br/}email" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="ethnicity" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="fashion" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="food" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="friendshipInfo" type="{http://business.socialapp.embedded.br/}friendshipInfo" minOccurs="0"/>
 *         &lt;element name="gender" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="happiestWhen" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="hasApp" type="{http://www.w3.org/2001/XMLSchema}boolean"/>
 *         &lt;element name="heroes" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="humor" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="id" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="interests" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="jobInterests" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="jobs" type="{http://business.socialapp.embedded.br/}organization" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="languagesSpoken" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="livingArrangement" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="login" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="lookingFor" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="movies" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="music" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="networkPresence" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="nickname" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="pets" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="phoneNumbers" type="{http://business.socialapp.embedded.br/}phone" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="pname" type="{http://business.socialapp.embedded.br/}personName" minOccurs="0"/>
 *         &lt;element name="politicalViews" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="profileSong" type="{http://business.socialapp.embedded.br/}url" minOccurs="0"/>
 *         &lt;element name="profileUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="profileVideo" type="{http://business.socialapp.embedded.br/}url" minOccurs="0"/>
 *         &lt;element name="quotes" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="relationshipStatus" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="religion" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="romance" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="scaredOf" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="schools" type="{http://business.socialapp.embedded.br/}organization" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="sexualOrientation" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="smoker" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="sports" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="status" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="tags" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="thumbnailUrl" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="timeZone" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="turnOffs" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="turnOns" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="tvShows" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="urls" type="{http://business.socialapp.embedded.br/}url" maxOccurs="unbounded" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "user", propOrder = {
    "aboutMe",
    "activities",
    "addresses",
    "age",
    "bodyType",
    "books",
    "cars",
    "children",
    "currentLocation",
    "dateOfBirth",
    "drinker",
    "emails",
    "ethnicity",
    "fashion",
    "food",
    "friendshipInfo",
    "gender",
    "happiestWhen",
    "hasApp",
    "heroes",
    "humor",
    "id",
    "interests",
    "jobInterests",
    "jobs",
    "languagesSpoken",
    "livingArrangement",
    "login",
    "lookingFor",
    "movies",
    "music",
    "networkPresence",
    "nickname",
    "pets",
    "phoneNumbers",
    "pname",
    "politicalViews",
    "profileSong",
    "profileUrl",
    "profileVideo",
    "quotes",
    "relationshipStatus",
    "religion",
    "romance",
    "scaredOf",
    "schools",
    "sexualOrientation",
    "smoker",
    "sports",
    "status",
    "tags",
    "thumbnailUrl",
    "timeZone",
    "turnOffs",
    "turnOns",
    "tvShows",
    "urls"
})
public class User {

    protected String aboutMe;
    @XmlElement(nillable = true)
    protected List<String> activities;
    @XmlElement(nillable = true)
    protected List<Address> addresses;
    protected int age;
    protected BodyType bodyType;
    @XmlElement(nillable = true)
    protected List<String> books;
    @XmlElement(nillable = true)
    protected List<String> cars;
    protected String children;
    protected Address currentLocation;
    protected String dateOfBirth;
    protected String drinker;
    @XmlElement(nillable = true)
    protected List<Email> emails;
    protected String ethnicity;
    protected String fashion;
    @XmlElement(nillable = true)
    protected List<String> food;
    protected FriendshipInfo friendshipInfo;
    protected String gender;
    protected String happiestWhen;
    protected boolean hasApp;
    @XmlElement(nillable = true)
    protected List<String> heroes;
    protected String humor;
    protected String id;
    @XmlElement(nillable = true)
    protected List<String> interests;
    protected String jobInterests;
    @XmlElement(nillable = true)
    protected List<Organization> jobs;
    @XmlElement(nillable = true)
    protected List<String> languagesSpoken;
    protected String livingArrangement;
    protected String login;
    @XmlElement(nillable = true)
    protected List<String> lookingFor;
    @XmlElement(nillable = true)
    protected List<String> movies;
    @XmlElement(nillable = true)
    protected List<String> music;
    protected String networkPresence;
    protected String nickname;
    protected String pets;
    @XmlElement(nillable = true)
    protected List<Phone> phoneNumbers;
    protected PersonName pname;
    protected String politicalViews;
    protected Url profileSong;
    protected String profileUrl;
    protected Url profileVideo;
    @XmlElement(nillable = true)
    protected List<String> quotes;
    protected String relationshipStatus;
    protected String religion;
    protected String romance;
    protected String scaredOf;
    @XmlElement(nillable = true)
    protected List<Organization> schools;
    protected String sexualOrientation;
    protected String smoker;
    @XmlElement(nillable = true)
    protected List<String> sports;
    protected String status;
    @XmlElement(nillable = true)
    protected List<String> tags;
    protected String thumbnailUrl;
    protected String timeZone;
    @XmlElement(nillable = true)
    protected List<String> turnOffs;
    @XmlElement(nillable = true)
    protected List<String> turnOns;
    @XmlElement(nillable = true)
    protected List<String> tvShows;
    @XmlElement(nillable = true)
    protected List<Url> urls;

    /**
     * Gets the value of the aboutMe property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAboutMe() {
        return aboutMe;
    }

    /**
     * Sets the value of the aboutMe property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAboutMe(String value) {
        this.aboutMe = value;
    }

    /**
     * Gets the value of the activities property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the activities property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getActivities().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getActivities() {
        if (activities == null) {
            activities = new ArrayList<String>();
        }
        return this.activities;
    }

    /**
     * Gets the value of the addresses property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the addresses property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getAddresses().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link Address }
     * 
     * 
     */
    public List<Address> getAddresses() {
        if (addresses == null) {
            addresses = new ArrayList<Address>();
        }
        return this.addresses;
    }

    /**
     * Gets the value of the age property.
     * 
     */
    public int getAge() {
        return age;
    }

    /**
     * Sets the value of the age property.
     * 
     */
    public void setAge(int value) {
        this.age = value;
    }

    /**
     * Gets the value of the bodyType property.
     * 
     * @return
     *     possible object is
     *     {@link BodyType }
     *     
     */
    public BodyType getBodyType() {
        return bodyType;
    }

    /**
     * Sets the value of the bodyType property.
     * 
     * @param value
     *     allowed object is
     *     {@link BodyType }
     *     
     */
    public void setBodyType(BodyType value) {
        this.bodyType = value;
    }

    /**
     * Gets the value of the books property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the books property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getBooks().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getBooks() {
        if (books == null) {
            books = new ArrayList<String>();
        }
        return this.books;
    }

    /**
     * Gets the value of the cars property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the cars property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getCars().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getCars() {
        if (cars == null) {
            cars = new ArrayList<String>();
        }
        return this.cars;
    }

    /**
     * Gets the value of the children property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getChildren() {
        return children;
    }

    /**
     * Sets the value of the children property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setChildren(String value) {
        this.children = value;
    }

    /**
     * Gets the value of the currentLocation property.
     * 
     * @return
     *     possible object is
     *     {@link Address }
     *     
     */
    public Address getCurrentLocation() {
        return currentLocation;
    }

    /**
     * Sets the value of the currentLocation property.
     * 
     * @param value
     *     allowed object is
     *     {@link Address }
     *     
     */
    public void setCurrentLocation(Address value) {
        this.currentLocation = value;
    }

    /**
     * Gets the value of the dateOfBirth property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDateOfBirth() {
        return dateOfBirth;
    }

    /**
     * Sets the value of the dateOfBirth property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDateOfBirth(String value) {
        this.dateOfBirth = value;
    }

    /**
     * Gets the value of the drinker property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getDrinker() {
        return drinker;
    }

    /**
     * Sets the value of the drinker property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setDrinker(String value) {
        this.drinker = value;
    }

    /**
     * Gets the value of the emails property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the emails property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getEmails().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link Email }
     * 
     * 
     */
    public List<Email> getEmails() {
        if (emails == null) {
            emails = new ArrayList<Email>();
        }
        return this.emails;
    }

    /**
     * Gets the value of the ethnicity property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getEthnicity() {
        return ethnicity;
    }

    /**
     * Sets the value of the ethnicity property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setEthnicity(String value) {
        this.ethnicity = value;
    }

    /**
     * Gets the value of the fashion property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFashion() {
        return fashion;
    }

    /**
     * Sets the value of the fashion property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFashion(String value) {
        this.fashion = value;
    }

    /**
     * Gets the value of the food property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the food property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getFood().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getFood() {
        if (food == null) {
            food = new ArrayList<String>();
        }
        return this.food;
    }

    /**
     * Gets the value of the friendshipInfo property.
     * 
     * @return
     *     possible object is
     *     {@link FriendshipInfo }
     *     
     */
    public FriendshipInfo getFriendshipInfo() {
        return friendshipInfo;
    }

    /**
     * Sets the value of the friendshipInfo property.
     * 
     * @param value
     *     allowed object is
     *     {@link FriendshipInfo }
     *     
     */
    public void setFriendshipInfo(FriendshipInfo value) {
        this.friendshipInfo = value;
    }

    /**
     * Gets the value of the gender property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getGender() {
        return gender;
    }

    /**
     * Sets the value of the gender property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setGender(String value) {
        this.gender = value;
    }

    /**
     * Gets the value of the happiestWhen property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getHappiestWhen() {
        return happiestWhen;
    }

    /**
     * Sets the value of the happiestWhen property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setHappiestWhen(String value) {
        this.happiestWhen = value;
    }

    /**
     * Gets the value of the hasApp property.
     * 
     */
    public boolean isHasApp() {
        return hasApp;
    }

    /**
     * Sets the value of the hasApp property.
     * 
     */
    public void setHasApp(boolean value) {
        this.hasApp = value;
    }

    /**
     * Gets the value of the heroes property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the heroes property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getHeroes().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getHeroes() {
        if (heroes == null) {
            heroes = new ArrayList<String>();
        }
        return this.heroes;
    }

    /**
     * Gets the value of the humor property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getHumor() {
        return humor;
    }

    /**
     * Sets the value of the humor property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setHumor(String value) {
        this.humor = value;
    }

    /**
     * Gets the value of the id property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getId() {
        return id;
    }

    /**
     * Sets the value of the id property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setId(String value) {
        this.id = value;
    }

    /**
     * Gets the value of the interests property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the interests property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getInterests().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getInterests() {
        if (interests == null) {
            interests = new ArrayList<String>();
        }
        return this.interests;
    }

    /**
     * Gets the value of the jobInterests property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getJobInterests() {
        return jobInterests;
    }

    /**
     * Sets the value of the jobInterests property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setJobInterests(String value) {
        this.jobInterests = value;
    }

    /**
     * Gets the value of the jobs property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the jobs property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getJobs().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link Organization }
     * 
     * 
     */
    public List<Organization> getJobs() {
        if (jobs == null) {
            jobs = new ArrayList<Organization>();
        }
        return this.jobs;
    }

    /**
     * Gets the value of the languagesSpoken property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the languagesSpoken property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getLanguagesSpoken().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getLanguagesSpoken() {
        if (languagesSpoken == null) {
            languagesSpoken = new ArrayList<String>();
        }
        return this.languagesSpoken;
    }

    /**
     * Gets the value of the livingArrangement property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getLivingArrangement() {
        return livingArrangement;
    }

    /**
     * Sets the value of the livingArrangement property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setLivingArrangement(String value) {
        this.livingArrangement = value;
    }

    /**
     * Gets the value of the login property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getLogin() {
        return login;
    }

    /**
     * Sets the value of the login property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setLogin(String value) {
        this.login = value;
    }

    /**
     * Gets the value of the lookingFor property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the lookingFor property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getLookingFor().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getLookingFor() {
        if (lookingFor == null) {
            lookingFor = new ArrayList<String>();
        }
        return this.lookingFor;
    }

    /**
     * Gets the value of the movies property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the movies property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getMovies().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getMovies() {
        if (movies == null) {
            movies = new ArrayList<String>();
        }
        return this.movies;
    }

    /**
     * Gets the value of the music property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the music property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getMusic().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getMusic() {
        if (music == null) {
            music = new ArrayList<String>();
        }
        return this.music;
    }

    /**
     * Gets the value of the networkPresence property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getNetworkPresence() {
        return networkPresence;
    }

    /**
     * Sets the value of the networkPresence property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setNetworkPresence(String value) {
        this.networkPresence = value;
    }

    /**
     * Gets the value of the nickname property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getNickname() {
        return nickname;
    }

    /**
     * Sets the value of the nickname property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setNickname(String value) {
        this.nickname = value;
    }

    /**
     * Gets the value of the pets property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPets() {
        return pets;
    }

    /**
     * Sets the value of the pets property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPets(String value) {
        this.pets = value;
    }

    /**
     * Gets the value of the phoneNumbers property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the phoneNumbers property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPhoneNumbers().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link Phone }
     * 
     * 
     */
    public List<Phone> getPhoneNumbers() {
        if (phoneNumbers == null) {
            phoneNumbers = new ArrayList<Phone>();
        }
        return this.phoneNumbers;
    }

    /**
     * Gets the value of the pname property.
     * 
     * @return
     *     possible object is
     *     {@link PersonName }
     *     
     */
    public PersonName getPname() {
        return pname;
    }

    /**
     * Sets the value of the pname property.
     * 
     * @param value
     *     allowed object is
     *     {@link PersonName }
     *     
     */
    public void setPname(PersonName value) {
        this.pname = value;
    }

    /**
     * Gets the value of the politicalViews property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPoliticalViews() {
        return politicalViews;
    }

    /**
     * Sets the value of the politicalViews property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPoliticalViews(String value) {
        this.politicalViews = value;
    }

    /**
     * Gets the value of the profileSong property.
     * 
     * @return
     *     possible object is
     *     {@link Url }
     *     
     */
    public Url getProfileSong() {
        return profileSong;
    }

    /**
     * Sets the value of the profileSong property.
     * 
     * @param value
     *     allowed object is
     *     {@link Url }
     *     
     */
    public void setProfileSong(Url value) {
        this.profileSong = value;
    }

    /**
     * Gets the value of the profileUrl property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getProfileUrl() {
        return profileUrl;
    }

    /**
     * Sets the value of the profileUrl property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setProfileUrl(String value) {
        this.profileUrl = value;
    }

    /**
     * Gets the value of the profileVideo property.
     * 
     * @return
     *     possible object is
     *     {@link Url }
     *     
     */
    public Url getProfileVideo() {
        return profileVideo;
    }

    /**
     * Sets the value of the profileVideo property.
     * 
     * @param value
     *     allowed object is
     *     {@link Url }
     *     
     */
    public void setProfileVideo(Url value) {
        this.profileVideo = value;
    }

    /**
     * Gets the value of the quotes property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the quotes property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getQuotes().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getQuotes() {
        if (quotes == null) {
            quotes = new ArrayList<String>();
        }
        return this.quotes;
    }

    /**
     * Gets the value of the relationshipStatus property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getRelationshipStatus() {
        return relationshipStatus;
    }

    /**
     * Sets the value of the relationshipStatus property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setRelationshipStatus(String value) {
        this.relationshipStatus = value;
    }

    /**
     * Gets the value of the religion property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getReligion() {
        return religion;
    }

    /**
     * Sets the value of the religion property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setReligion(String value) {
        this.religion = value;
    }

    /**
     * Gets the value of the romance property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getRomance() {
        return romance;
    }

    /**
     * Sets the value of the romance property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setRomance(String value) {
        this.romance = value;
    }

    /**
     * Gets the value of the scaredOf property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getScaredOf() {
        return scaredOf;
    }

    /**
     * Sets the value of the scaredOf property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setScaredOf(String value) {
        this.scaredOf = value;
    }

    /**
     * Gets the value of the schools property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the schools property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getSchools().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link Organization }
     * 
     * 
     */
    public List<Organization> getSchools() {
        if (schools == null) {
            schools = new ArrayList<Organization>();
        }
        return this.schools;
    }

    /**
     * Gets the value of the sexualOrientation property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getSexualOrientation() {
        return sexualOrientation;
    }

    /**
     * Sets the value of the sexualOrientation property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setSexualOrientation(String value) {
        this.sexualOrientation = value;
    }

    /**
     * Gets the value of the smoker property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getSmoker() {
        return smoker;
    }

    /**
     * Sets the value of the smoker property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setSmoker(String value) {
        this.smoker = value;
    }

    /**
     * Gets the value of the sports property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the sports property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getSports().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getSports() {
        if (sports == null) {
            sports = new ArrayList<String>();
        }
        return this.sports;
    }

    /**
     * Gets the value of the status property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getStatus() {
        return status;
    }

    /**
     * Sets the value of the status property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setStatus(String value) {
        this.status = value;
    }

    /**
     * Gets the value of the tags property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the tags property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getTags().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getTags() {
        if (tags == null) {
            tags = new ArrayList<String>();
        }
        return this.tags;
    }

    /**
     * Gets the value of the thumbnailUrl property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getThumbnailUrl() {
        return thumbnailUrl;
    }

    /**
     * Sets the value of the thumbnailUrl property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setThumbnailUrl(String value) {
        this.thumbnailUrl = value;
    }

    /**
     * Gets the value of the timeZone property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getTimeZone() {
        return timeZone;
    }

    /**
     * Sets the value of the timeZone property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setTimeZone(String value) {
        this.timeZone = value;
    }

    /**
     * Gets the value of the turnOffs property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the turnOffs property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getTurnOffs().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getTurnOffs() {
        if (turnOffs == null) {
            turnOffs = new ArrayList<String>();
        }
        return this.turnOffs;
    }

    /**
     * Gets the value of the turnOns property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the turnOns property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getTurnOns().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getTurnOns() {
        if (turnOns == null) {
            turnOns = new ArrayList<String>();
        }
        return this.turnOns;
    }

    /**
     * Gets the value of the tvShows property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the tvShows property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getTvShows().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link String }
     * 
     * 
     */
    public List<String> getTvShows() {
        if (tvShows == null) {
            tvShows = new ArrayList<String>();
        }
        return this.tvShows;
    }

    /**
     * Gets the value of the urls property.
     * 
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the urls property.
     * 
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getUrls().add(newItem);
     * </pre>
     * 
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link Url }
     * 
     * 
     */
    public List<Url> getUrls() {
        if (urls == null) {
            urls = new ArrayList<Url>();
        }
        return this.urls;
    }

}
